// packageOnlineStore/pages/personalHomepage/personalHomepage.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    baseUrl:'',//全局连接地址
    userId:'',//用户id
    userDetails:'',//用户信息
    orderList:[],//未付款的订单信息
    remainingTime: 1800,// 倒计时剩余时间，初始化为30分钟对应的秒数
    timeFormat: '00:00:00',// 用于存储格式化后的时分秒时间字符串
    pendingPayment:0,//待付款个数
    pendingReceipt:0,//待收货个数
    pendingEvaluated:0,//待评价个数
    info:"",//用户信息
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    const app = getApp();
    const baseUrl=app.globalConfig.baseUrl //获取本地连接地址
    const userId=app.globalData.userInfo.userId
    const token = wx.getStorageSync('token');
    this.setData({
      userId:app.globalData.userInfo.userId,
      baseUrl:app.globalConfig.baseUrl,
      info:app.globalData.userInfo,
    })
    wx.request({
      url: baseUrl+'/system/user/'+userId,
      method:'GET',
      header:{
        'Authorization': 'Bearer\u0020' + token
      },
      success:(res)=>{
        this.setData({
          userDetails:res.data.data
        })
      }
    })
    //获取等待付款的订单
    wx.request({
      url: baseUrl+'/product/productOrder/list?stateId=1',
      method:'GET',
      data:{
        pageNum:1,
        pageSize:3,
        userId:userId
      },
      header:{
        'Authorization': 'Bearer\u0020' + token
      },
      success:(res)=>{
        this.setData({
          orderList:res.data.rows
        })
      }
    })
    // 启动倒计时定时器
    this.startCountdown();
    //获取待付款个数
    wx.request({
      url: baseUrl+'/product/productOrder/list?stateId=1',
      method:'GET',
      data:{
        pageNum:1,
        pageSize:999,
        userId:userId
      },
      header:{
        'Authorization': 'Bearer\u0020' + token
      },
      success:(res)=>{
        this.setData({
          pendingPayment:res.data.rows.length
        })
      }
    })
    //获取待收货个数
    wx.request({
      url: baseUrl+'/product/productOrder/list?stateId=2',
      method:'GET',
      data:{
        pageNum:1,
        pageSize:999,
        userId:userId
      },
      header:{
        'Authorization': 'Bearer\u0020' + token
      },
      success:(res)=>{
        console.log(res);
        this.setData({
          pendingReceipt:res.data.rows.length
        })
      }
    })
    //获取待评价个数
    wx.request({
      url: baseUrl+'/product/productOrder/list?stateId=5',
      method:'GET',
      data:{
        pageNum:1,
        pageSize:999,
        userId:userId
      },
      header:{
        'Authorization': 'Bearer\u0020' + token
      },
      success:(res)=>{
        this.setData({
          pendingEvaluated:res.data.rows.length
        })
      }
    })
  },
  goToPay(){
    wx.navigateTo({
      url: '/packageOnlineStore/pages/orderList/orderList?id=1',
    })
  },
  /**
   * 启动倒计时的函数
   */
  startCountdown() {
    const that = this;
    // 设置定时器，每秒更新一次倒计时剩余时间
    this.timer = setInterval(() => {
        // 获取当前剩余时间
        let time = that.data.remainingTime;
        // 时间减1秒
        time--;
        // 更新页面显示的剩余时间数据
        that.setData({
            remainingTime: time
        });
        // 调用函数将剩余秒数转换为时分秒格式的字符串
        const formatTime = that.formatTime(time);
        that.setData({
            timeFormat: formatTime
        });
        // 当时间减到0时，清除定时器，结束倒计时
        if (time === 0) {
            clearInterval(that.timer);
        }
    }, 1000);
  },
  /**
   * 将秒数转换为时分秒格式字符串的函数
   */
  formatTime(seconds) {
    const hours = Math.floor(seconds / 3600);
    const minutes = Math.floor((seconds % 3600) / 60);
    const secs = seconds % 60;
    const padZero = (num) => num.toString().padStart(2, '0');
    return `${padZero(hours)}:${padZero(minutes)}:${padZero(secs)}`;
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {
    // 在页面卸载时清除定时器，避免内存泄漏等问题
    clearInterval(this.timer);
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})